#include <RuntimeException.hpp>

#ifndef _CLASSINDEXOUTOFBOUNDSEXCEPTION_
#define _CLASSINDEXOUTOFBOUNDSEXCEPTION_

namespace Exceptions {

class IndexOutOfBoundsException : public Exceptions::RuntimeException
{
public:
	IndexOutOfBoundsException();
	IndexOutOfBoundsException(std::string message);
	IndexOutOfBoundsException(std::string message, const Exceptions::Throwable& cause);
	IndexOutOfBoundsException(const Exceptions::Throwable& cause);

	virtual std::string toString();

private:
	static std::string Description;
};

}//namespace Exceptions

#endif
